const express = require('express');
// 引入body-parser
const bodyParser = require('body-parser');
// 引入cors
const cors = require('cors');
// 引入数据库模块
const db = require('./db/index');
// 引入路由器模块
const users = require('./router/users');
const app = express();

// 静态文件托管
app.use(express.static("public"));

// 应用body-parser包 作用是将post请求体中的数据挂载到req.body
app.use(bodyParser.urlencoded({extended:true}));
// 在上面这行代码之后所有的post请求的req.body都能读取到数据

// 使用cors技术解决跨域
app.use(cors());
// 使用全局中间件优先处理一下 确保数据库连接成功
app.use('/',async(req,res,next)=>{
    try{
        await db;
        // 当数据库连接成功之后 放行
        next();
    }catch(e){
        console.log(e);
        res.send('服务器和数据库连接失败');
    }
})
// 应用路由器模块
app.use(users);


app.listen(3000,err=>{
    if(!err){
        console.log('服务器启动成功!');
    }else{
        console.log(err);
    }
})